/**
 * ================================管理员页面================================
 */
// 根组件
const AdminLayout = () => import('@/views/AdminViews/Layout/index.vue')
// 个人信息
const AdminAvatar = () => import('@/views/AdminViews/AdminInfo/AdminAvatar/index.vue')
const AdminInfoDetail = () => import('@/views/AdminViews/AdminInfo/AdminInfoDetail/index.vue')
const AdminChangePassword = () => import('@/views/AdminViews/AdminInfo/ChangePassword/index.vue')
// 员工管理模块
const EmpolyeeManagementLayout = () => import('@/views/AdminViews/EmployeeManagement/index.vue')
const EmployeeManagementDetail = () => import('@/views/AdminViews/EmployeeManagement/Detail/index.vue')
const EmployeeManagementEdit = () => import('@/views/AdminViews/EmployeeManagement/Edit/index.vue')
const EmployeeManagementList = () => import('@/views/AdminViews/EmployeeManagement/List/index.vue')
const EmployeeManagementWorkOrderList = () => import('@/views/AdminViews/EmployeeManagement/WorkOrderList/index.vue')
const EmployeeManagementWorkOrderDetail = () => import('@/views/AdminViews/EmployeeManagement/WorkOrderDetail/index.vue')
// 管理员管理模块
const AdminManagementLayout = () => import('@/views/AdminViews/AdminManagement/index.vue')
const AdminManagementAdd = () => import('@/views/AdminViews/AdminManagement/Add/index.vue')
const AdminManagementDetail = () => import('@/views/AdminViews/AdminManagement/Detail/index.vue')
const AdminManagementEdit = () => import('@/views/AdminViews/AdminManagement/Edit/index.vue')
const AdminManagementList = () => import('@/views/AdminViews/AdminManagement/List/index.vue')
// 游戏管理模块
const GameManagementLayout = () => import('@/views/AdminViews/GameManagement/index.vue')
const GameManagementAdd = () => import('@/views/AdminViews/GameManagement/Add/index.vue')
const GameManagementDetail = () => import('@/views/AdminViews/GameManagement/Detail/index.vue')
const GameManagementEditGame = () => import('@/views/AdminViews/GameManagement/Edit/Game.vue')
const GameManagementEditGamePrice = () => import('@/views/AdminViews/GameManagement/Edit/GamePrice.vue')
const GameManagementEditGameCategory = () => import('@/views/AdminViews/GameManagement/Edit/GameCategory.vue')
const GameManagementEditGameView = () => import('@/views/AdminViews/GameManagement/Edit/GameView.vue')
const GameManagementEditGameDetail = () => import('@/views/AdminViews/GameManagement/Edit/GameDetail.vue')
const GameManagementEditGameRequire = () => import('@/views/AdminViews/GameManagement/Edit/GameRequire.vue')
const GameManagementList = () => import('@/views/AdminViews/GameManagement/List/index.vue')
// 游戏分类模块
const GameCategoryManagementLayout = () => import('@/views/AdminViews/GameCategoryManagement/index.vue')
const GameCategoryManagementList = () => import('@/views/AdminViews/GameCategoryManagement/List/index.vue')
// 用户管理模块
const UserManagementLayout = () => import('@/views/AdminViews/UserManagement/index.vue')
const UserManagementBillDetail = () => import('@/views/AdminViews/UserManagement/BillDetail/index.vue')
const UserManagementBillList = () => import('@/views/AdminViews/UserManagement/BillList/index.vue')
const UserManagementDetail = () => import('@/views/AdminViews/UserManagement/Detail/index.vue')
const UserManagementEdit = () => import('@/views/AdminViews/UserManagement/Edit/index.vue')
const UserManagementGame = () => import('@/views/AdminViews/UserManagement/Game/index.vue')
const UserManagementList = () => import('@/views/AdminViews/UserManagement/List/index.vue')
// 新闻模块
const NewsManagementLayout = () => import('@/views/AdminViews/NewsManagement/index.vue')
const NewsManagementAdd = () => import('@/views/AdminViews/NewsManagement/Add/index.vue')
const NewsManagementDetail = () => import('@/views/AdminViews/NewsManagement/Detail/index.vue')
const NewsManagementEdit = () => import('@/views/AdminViews/NewsManagement/Edit/index.vue')
const NewsManagementList = () => import('@/views/AdminViews/NewsManagement/List/index.vue')
// 发行商模块
const PublisherManagementLayout = () => import('@/views/AdminViews/PublisherManagement/index.vue')
const PublisherManagementAdd = () => import('@/views/AdminViews/PublisherManagement/Add/index.vue')
const PublisherManagementDetail = () => import('@/views/AdminViews/PublisherManagement/Detail/index.vue')
const PublisherManagementEdit = () => import('@/views/AdminViews/PublisherManagement/Edit/index.vue')
const PublisherManagementList = () => import('@/views/AdminViews/PublisherManagement/List/index.vue')
// 登录模块
const AdminLogin = () => import('@/views/AdminViews/Login/index.vue')

export const adminRoutes = [
    // 管理员路由
    {
        path: '/admin',
        component: AdminLayout,
        redirect: '/admin/employee/list',
        children: [
            {
                path: 'employee',
                component: EmpolyeeManagementLayout,
                redirect: '/admin/employee/list',
                children: [
                    {
                        path: 'list',
                        component: EmployeeManagementList
                    },
                    {
                        path: 'detail',
                        component: EmployeeManagementDetail
                    },
                    {
                        path: 'edit',
                        component: EmployeeManagementEdit
                    },
                    {
                        path: 'workorder/list',
                        component: EmployeeManagementWorkOrderList
                    },
                    {
                        path: 'workorder/detail',
                        component: EmployeeManagementWorkOrderDetail
                    }
                ]
            },
            {
                path: 'admin',
                component: AdminManagementLayout,
                redirect: '/admin/admin/list',
                children: [
                    {
                        path: 'add',
                        component: AdminManagementAdd
                    },
                    {
                        path: 'list',
                        component: AdminManagementList
                    },
                    {
                        path: 'detail/:id',
                        component: AdminManagementDetail
                    },
                    {
                        path: 'edit/:id',
                        component: AdminManagementEdit
                    }
                ]
            },
            {
                path: 'game',
                component: GameManagementLayout,
                redirect: '/admin/game/list',
                children: [
                    {
                        path: 'add',
                        component: GameManagementAdd
                    },
                    {
                        path: 'list',
                        component: GameManagementList
                    },
                    {
                        path: 'detail/:id',
                        component: GameManagementDetail
                    },
                    {
                        path: 'edit/game/:id',
                        component: GameManagementEditGame
                    },
                    {
                        path: 'edit/gameprice/:id',
                        component: GameManagementEditGamePrice
                    },
                    {
                        path: 'edit/gamecategory/:id',
                        component: GameManagementEditGameCategory
                    },
                    {
                        path: 'edit/gameview/:id',
                        component: GameManagementEditGameView
                    },
                    {
                        path: 'edit/gamedetail/:id',
                        component: GameManagementEditGameDetail
                    },
                    {
                        path: 'edit/gamerequire/:id',
                        component: GameManagementEditGameRequire
                    }
                ]
            },
            {
                path: 'game/category',
                component: GameCategoryManagementLayout,
                redirect: '/admin/game/category/list',
                children: [
                    {
                        path: 'list',
                        component: GameCategoryManagementList
                    }
                ]
            },
            {
                path: 'user',
                component: UserManagementLayout,
                redirect: '/admin/user/list',
                children: [
                    {
                        path: 'list',
                        component: UserManagementList
                    },
                    {
                        path: 'detail',
                        component: UserManagementDetail
                    },
                    {
                        path: 'edit',
                        component: UserManagementEdit
                    },
                    {
                        path: 'game',
                        component: UserManagementGame
                    },
                    {
                        path: 'bill/list',
                        component: UserManagementBillList
                    },
                    {
                        path: 'bill/detail',
                        component: UserManagementBillDetail
                    }
                ]
            },
            {
                path: 'news',
                component: NewsManagementLayout,
                redirect: '/admin/news/list',
                children: [
                    {
                        path: 'add',
                        component: NewsManagementAdd
                    },
                    {
                        path: 'list',
                        component: NewsManagementList
                    },
                    {
                        path: 'detail/:id',
                        component: NewsManagementDetail
                    },
                    {
                        path: 'edit/:id',
                        component: NewsManagementEdit
                    }
                ]
            },
            {
                path: 'publisher',
                component: PublisherManagementLayout,
                redirect: '/admin/publisher/list',
                children: [
                    {
                        path: 'add',
                        component: PublisherManagementAdd
                    },
                    {
                        path: 'list',
                        component: PublisherManagementList
                    },
                    {
                        path: 'detail/:id',
                        component: PublisherManagementDetail
                    },
                    {
                        path: 'edit/:id',
                        component: PublisherManagementEdit
                    }
                ]
            },
            {
                path: 'avatar',
                component: AdminAvatar
            },
            {
                path: 'profile',
                component: AdminInfoDetail
            },
            {
                path: 'password',
                component: AdminChangePassword
            }
        ]
    },
    {
        path: '/admin/login',
        component: AdminLogin
    },
]
